home *** CD-ROM | disk | FTP | other *** search
/ Internet Surfer 2.0 / Internet Surfer 2.0 (Wayzata Technology) (1996).iso / pc / textfile / faqs / motf_faq / part1 next >
Encoding:
Internet Message Format  |  1992-12-26  |  35.5 KB

  1. Xref: bloom-picayune.mit.edu comp.windows.x.motif:13657 news.answers:4508
  2. Newsgroups: comp.windows.x.motif,news.answers
  3. Path: bloom-picayune.mit.edu!enterpoop.mit.edu!news.media.mit.edu!micro-heart-of-gold.mit.edu!wupost!uunet!munnari.oz.au!manuel.anu.edu.au!csc.canberra.edu.au!news
  4. From: jan@ise.canberra.edu.au (Jan Newmarch)
  5. Subject: Motif FAQ (Part 1 of 5)
  6. Message-ID: <1992Dec10.001545.10392@csc.canberra.edu.au>
  7. Followup-To: comp.windows.x.motif
  8. Summary: This posting contains a list of Frequently Asked Questions and their answers about Motif.
  9. Keywords: FAQ question answer
  10. Sender: news@csc.canberra.edu.au
  11. Reply-To: jan@ise.canberra.edu.au (Jan Newmarch)
  12. Organization: University of Canberra
  13. Date: Thu, 10 Dec 92 00:15:45 GMT
  14. Approved: news-answers-request@MIT.Edu
  15. Expires: +1 months
  16. Lines: 797
  17.  
  18. Archive-name: motif-faq/part1
  19. Last-modified: Thu December 12 1992
  20. Version: 2.12
  21.  
  22.  
  23. Motif FAQ
  24.  
  25. [Last changed: 10 Dec 92]
  26.  
  27. This article contains the answers to some Frequently Asked Questions (FAQ) 
  28. often seen in comp.windows.x.motif. It is posted to help reduce volume in 
  29. this newsgroup and to provide hard-to-find information of general interest.
  30.  
  31.         Please redistribute this article!
  32.  
  33. This FAQ is maintained by Jan Newmarch (jan@ise.canberra.edu.au).  Send
  34. updates and corrections to him at that mail address.  It would help if
  35. the subject line contained the phrase "FAQ".
  36.  
  37. This article includes answers to the following questions. Ones marked with
  38. a + indicate questions new to this issue; those with changes of content since
  39. the last issue are marked by *:
  40.  
  41.  0) TOPIC: WHAT ARE OTHER RELEVANT NEWSGROUPS?
  42.  1) TOPIC: FTP ARCHIVES
  43.  2)* Is the FAQ list available for FTP anywhere?
  44.  3)*  Is this newsgroup accessible via email?
  45.  4) Is this newsgroup archived?
  46.  5) Is the mail list motif-talk archived?
  47.  6) TOPIC: OSF AND MOTIF
  48.  7)*  What versions of Motif are there?
  49.  8)*  Where can I get Motif?
  50.  9) Is there a list of Motif bugs?
  51. 10) Where can I get public domain Motif source?
  52. 11)  Are the Motif examples publically available?
  53. 12)  Has anyone done a public domain Motif lookalike?
  54. 13) Does anyone from OSF pay attention to our questions/suggestions?
  55. 14) Does OSF have an application compliance validation service?  
  56. 15) What is the motif-talk mailing list?
  57. 16) What MIT patches do I use, and when do I use fix-osf?
  58. 17) How does Motif work with X11R5?
  59. 18)  How can I find which version of Motif I have?
  60. 19) TOPIC: LITERATURE
  61. 20)  What books should I read or do I need to program using Motif?
  62. 21) TOPIC: MWM
  63. 22) What is the difference between Motif and mwm?
  64. 23) Does anyone have an alternative set of 3-D defaults for a monochrome screen?
  65. 24)  How can I modify the Motif window manager decorations?
  66. 25)  How can I turn off the Motif window manager functions from the system menu?
  67. 26)  How can tell I if the user has selected the "Close" item on the system menu attached to the top-level shell?
  68. 27)  Is there an mwm virtual desktop manager?
  69. 28) TOPIC: MOTIF GENERATORS
  70. 29)*  What prototyping tools are there to generate Motif code?
  71. 30) TOPIC: TEXT WIDGET
  72. 31) Why does  pressing  <return> in a text widget do nothing?
  73. 32) When I add text to a scrolling text widget how can I get the new text to show?
  74. 33)* Does the text widget support 16 bit character fonts?
  75. 34) How can I stop the text widget from echoing characters typed?
  76. 35) How can I replace characters typed with say a `*'?
  77. 36) How can I best add a large piece of text to a scrolled text widget?
  78. 37) How can I highlight text in the Text widget?
  79. 38)  How can I select all of the text in a widget programmatically?
  80. 39) How can I change colours of text in the Text widget?
  81. 40) How can I change the font of text in the Text widget?
  82. 41) Is there an emacs binding for the text widget?
  83. 42) How can I use a file as the text source for a Text widget?
  84. 43) How can put Text in overstrike mode instead of insert?
  85. 44) How can I make the Delete key do a backspace?
  86. 45) TOPIC: LIST WIDGET
  87. 46) How do I best put a new set of items into a list?
  88. 47)  Can I have strings with different fonts in a list?
  89. 48) Can I get a bitmap to show in a list item like I can in a Label?
  90. 49) Can I have items with different colours in a list?
  91. 50) Can I grey out an item in a list?
  92. 51)  Can I have multi-line items in a list?
  93. 52)+How can I tell the position of selected items in a list?
  94. 53) TOPIC: FILE SELECTION BOX WIDGET
  95. 54) What is libPW.a and do I need it?
  96. 55) What are these compile errors: Undefined symbol _regcmp?
  97. 56) What's wrong with the Motif 1.0 File Selection Box?
  98. 57) TOPIC: FORM WIDGET
  99. 58) Why don't labels in a Form resize when the label is changed?
  100. 59) How can I center a widget in a form?
  101. 60) How do I line up two columns of widgets of different types?
  102. 61) TOPIC: PUSHBUTTON WIDGET
  103. 62) Why can't I use accelerators on buttons not in a menu?
  104. 63) TOPIC: LABEL WIDGET
  105. 64) How can I align the text in a label (button, etc) widget?
  106. 65) Why doesn't label alignment work in a RowColumn?
  107. 66)  How can I set a multiline label?
  108. 67)  How can I have a vertical label?
  109. 68)  How can I have a Pixmap in a Label?
  110. 69) TOPIC: DRAWING AREA WIDGET    
  111. 70) How can I send an expose event to a Drawing Area widget?
  112. 71) How can I know when a DrawingArea has been resized?
  113. 72) TOPIC: MENUS
  114. 73) What can I put inside a menu bar?
  115. 74) Can I have a cascade button without a submenu in a pulldown menu?
  116. 75) Should I have a cascade button without a submenu in a pulldown menu?
  117. 76)  What is the best way to create popup menus?
  118. 77)  How do popup menus work?
  119. 78)  Should I use translation tables or actions for popup menus?
  120. 79)  What are the known bugs in popup menus?
  121. 80)  Can I have multiple popup menus on the same widget?
  122. 81) TOPIC: INPUT FOCUS
  123. 82) How can I direct the keyboard input to a particular widget?
  124. 83)  How can I have a modal dialog which has to be answered before the application can continue?
  125. 84) TOPIC: MEMORY AND SPEED
  126. 85)  Why does my application grow in size?
  127. 86) Why does my application take a long time to start up?
  128. 87) My application is running too slowly. How can I speed it up?
  129. 88) TOPIC: XMSTRING
  130. 89) How can I get the Ascii text out of an XmString?
  131. 90) When can XmStrings used as resources be freed?
  132. 91) Why doesn't XmStringGetNextSegment() work properly?
  133. 92) TOPIC: DIALOGS
  134. 93) How do I stop my dialog disappearing when I press the help button?
  135. 94) How do I make my own dialog?
  136. 95) How come the title bars for my dialogs now have "_popup" or "<-popup" concatenated onto the widget name?
  137. 96) How can I force a dialog window to display?
  138. 97) How can I control placement of a popup widget?
  139. 98) TOPIC: LANGUAGE BINDINGS
  140. 99)*  Is there a C++ binding for Motif?
  141. 100)+ How can I have a C++ member function in a callback?
  142. 101)* Is there a Common Lisp binding for Motif?
  143. 102)  Is there an Ada binding for Motif?
  144. 103) TOPIC: SPECIFIC PLATFORMS
  145. 104) Is it easy to build Motif for a Sun?
  146. 105) What compile errors/warnings might I get in both Sun 3 and Sun 4?
  147. 106) On a Sun 3, what are the mwm startup error messages about?
  148. 107) Are there problems making shared libraries on a Sun?
  149. 108)  The OpenWindows server hangs when I popup a menu with Button 3.
  150. 109) Has anyone made shared libraries on an IBM RS/6000?
  151. 110)  What is the error  "Unaligned access in XmString" under Ultrix?
  152. 111) TOPIC: KEYSYMS
  153. 112)  What is causing the messages "unknown keysym osfDown..."?
  154. 113) What happens if I can't install Motif Keysyms?
  155. 114) Why has OSF introduced Keysyms into Motif 1.1?
  156. 115) TOPIC: ICONS
  157. 116) How can I keep track of changes to iconic/normal window state?
  158. 117) How can I check if my application has come up iconic?
  159. 118) How can I start my application in iconic state?
  160. 119) How can an application iconify itself?
  161. 120) How can an application de-iconify itself?
  162. 121) TOPIC: MISCELLANEOUS
  163. 122)+ What is the matter with Frame in Motif 1.2?
  164. 123)  What is IMUG and how do I join it?
  165. 124)  How do I set the title of a top level window?
  166. 125)  Can I use editres with Motif?
  167. 126)  How can I put decorations on transient windows using olwm?
  168. 127) Why does an augment translation appear to act as replace for some widgets?
  169. 128) How do you "grey" out a widget so that it cannot be activated?
  170. 129) Why doesn't the Help callback work on some widgets?
  171. 130) Where can I get a Table widget?
  172. 131)  Has anyone done a bar graph widget?
  173. 132)  Does anyone know of a source code of a graph widget
  174. 133)  Is there a help system available, such as in Windows 3?
  175. 134) Can I specify a widget in a resource file?
  176. 135) Why are only some of my translations are being installed?
  177. 136)  Where can I get the PanHandler code?
  178. 137) What are these passive grab warnings?
  179. 138) How do I have more buttons than three in a box?
  180. 139)  How do I create a "busy working cursor"?
  181. 140)  What order should the libraries be linked in?
  182. 141)  How do I use xmkmf for Motif clients?
  183. 142)  How do I make context sensitive help?
  184. 143) TOPIC: ACKNOWLEDGEMENTS
  185.  
  186. If you have suggestions or corrections for any of these answers or any 
  187. additional information, please send them directly to jan@ise.canberra.edu.au;
  188. the information will be included in the next revision (or possibly the one 
  189. after that; thanks for the many suggestions which haven't been incorporated 
  190. yet).  The answers in this iteration are acknowledged to be partial.
  191.  
  192. This posting is intended to be distributed at approximately the beginning of 
  193. each month.
  194.  
  195. The information contained herein has been gathered from a variety of sources. In
  196. many cases attribution has been lost; if you would like to claim responsibility
  197. for a particular item, please let us know. 
  198.  
  199. Conventions used below: telephone numbers tend to be Bell-system unless 
  200. otherwise noted; prices on items are not included.
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209. -----------------------------------------------------------------------------
  210. Subject:  0) TOPIC: WHAT ARE OTHER RELEVANT NEWSGROUPS?
  211.  
  212. [Last modified: Dec 92]
  213.  
  214. Answer: This newsgroup is comp.windows.x.motif.  The nearest related group is
  215. comp.windows.x.  It also maintains an FAQ, which deals in all sorts of X, Xlib
  216. and Xt questions. Look there for answers to questions such as "How do I get a
  217. screendump of my application?", "where do I get X11R4", etc.  Other groups
  218. which may have relevant information are comp.windows.x.pex,
  219. comp.windows.x.apps, comp.windows.x.intrinsics, comp.windows.news,
  220. comp.windows.misc and comp.windows.open-look.
  221.  
  222. -----------------------------------------------------------------------------
  223. Subject:  1) TOPIC: FTP ARCHIVES
  224.  
  225. -----------------------------------------------------------------------------
  226. Subject:  2)* Is the FAQ list available for FTP anywhere?
  227.  
  228. [Last modified: November 92]
  229.  
  230. Answer: A number of FAQ's (including this one) are available for anonymous ftp
  231. at pit-manager.mit.edu, 18.172.1.27 under the directory pub/usenet.  (Motif is
  232. under pub/usenet/comp.windows.x.motif) There is also a mail server called
  233. mail-server@pit-manager.mit.edu.  To retrieve a file send mail to the server
  234. with a subject or body similar to
  235.  
  236.         send usenet/comp.windows.x.motif/Frequently_Asked_Questions_About_Motif_(Part_1_of_3)
  237.  
  238. This service is looked after by Jonathan Kamens (jik@pit-manager.mit.edu).
  239.  
  240. It has also been placed in contrib/Motif-FAQ at export.lcs.mit.edu.
  241.  
  242. The FAQ is also available from csc.canberra.edu.au (137.92.1.1) by anonymous
  243. ftp.  It is in the file /pub/motif/Motif-FAQ
  244.  
  245. This files are also accessible from WAIS (Wide Area Information System) under
  246. UC-Motif-FAQ, allowing keyword-based searches of the FAQ.
  247.  
  248. -----------------------------------------------------------------------------
  249. Subject:  3)*  Is this newsgroup accessible via email?
  250.  
  251. [Last modified: December 92]
  252.  
  253. Answer: An email link was maintained by Kee Hinckley. To join, send mail to
  254. motif-request@alfalfa.com or motif-request%alfalfa.com@bu.edu.  However, Kee
  255. has indicated that he doesn't want to do this anymore, and the state of the
  256. mail service is uncertain.
  257.  
  258. -----------------------------------------------------------------------------
  259. Subject:  4) Is this newsgroup archived?
  260.  
  261. [Last modified: November 1992]
  262.  
  263. Answer: The newsgroup files from August 1991 are available from
  264. csc.canberra.edu.au (137.92.1.1) by anonymous ftp.  They are in the directory
  265. /pub/motif/comp.windows.x.motif.
  266.  
  267. These files are also accessible from WAIS (Wide Area Information System) under
  268. comp.windows.x.motif, allowing keyword-based searches of the newsgroup
  269. articles (this time on machine services.canberra.edu.au (137.92.1.12)).
  270.  
  271. -----------------------------------------------------------------------------
  272. Subject:  5) Is the mail list motif-talk archived?
  273.  
  274. Answer: If you have purchased support from OSF then you have access to their
  275. archive server for motif-talk.
  276.  
  277. -----------------------------------------------------------------------------
  278. Subject:  6) TOPIC: OSF AND MOTIF
  279.  
  280. -----------------------------------------------------------------------------
  281. Subject:  7)*  What versions of Motif are there?
  282. [Last modified: November 92]
  283.  
  284. Answer: Motif 1.0 is based on the R3 toolkit.  There are patch releases to
  285. 1.0: 1.0.1, 1.0.A, 1.0.2 and 1.0.3, 1.0.4, 1.0.5. 1.0.A was a fairly major
  286. patch, as it involved a complete re-engineering of UIL and Mrm.  Almost
  287. everyone who has 1.0.x has either 1.0.A or 1.0.3.
  288.  
  289. Motif 1.1 is based on the R4 toolkit.  The intial version was Motif 1.1.0.
  290. Motif 1.1.1 has been released as a patch to licensees with Full Support or
  291. Technical Update service.  Motif 1.1.2 is a patch release which contains the
  292. necessary changes to fix over 80 bugs reported against Motif. It is available
  293. to support contract holders (including both full support and update service).
  294. The 1.1.3 release fixed a further 150 bugs and was available from August 1991
  295. to support contract holders (including both full support and update service).
  296. 1.1.4 offers X11R5 support, but is not an X11R5 product.  1.1.5 was released
  297. in June 92 to licensees who hold a Motif Full Support or Update Support
  298. contract
  299.  
  300. Motif 1.2.0 was released in April 1992 and is based on the X11R5 toolkit.  It
  301. offers increased compatibility with international standards,  PC-style
  302. behavior and binary compatibility with OSF/Motif 1.1 applications.  New
  303. features include drag-and-drop, tear- off menus, toolkit enhancements and new
  304. documentation.  toolkit.  The code is totally ANSI C.  OSF distributes a 10
  305. pages sheet entitled "OSF/Motif R1.1 to R1.2: detailed overview of changes",
  306. which is available from OSF Motif direct channels.  (617-621-7300 or email
  307. direct@osf.org)
  308.  
  309. Motif 1.2.1 was released September 92.  Due to an optimisation from 1.2.0 to
  310. 1.2.1 object code compiled under 1.2.1 (that is, using 1.2.1 header files)
  311. will not link with 1.2.0 libraries (and, very probably, clients that use
  312. shared libraries and are linked against 1.2.1 won't startup against 1.2).
  313.  
  314. From dbrooks@osf.org: "Motif 2.0 will ship well before the sun burns out,
  315. unless we decide to change the name first, and will contain a free plastic
  316. spaceman in every box."
  317.  
  318. -----------------------------------------------------------------------------
  319. Subject:  8)*  Where can I get Motif?
  320.  
  321. [Last modified: November 92]
  322.  
  323. Answer:
  324.     Various hardware vendors produce developer's toolkits of binaries, header
  325. files, and documentation; check your hardware vendor, particularly if that
  326. vendor is an OSF member. Systems known to be shipping now: HP (sans UIL),
  327. Apollo (sans UIL), SCO, ICS, Mips (RISCwindows=X11R3 + full Motif), IBM, Data
  328. General for AViioNs (includes UIL), Bull (?), Concurrent Computer Corporation
  329. 5000, 6000, 8000 series machines, Convex, Sequent.
  330.  
  331.     In addition, independent binary vendors produce Motif toolkits . ICS makes
  332. several binary kits, notably for Sun, DEC, Apple; Quest (408-496-1900) sells
  333. kits for Suns, as well; IXI (+44 223 462 131) offers kits for Sun3 (SunOS 3.5
  334. or later, and Sun4 (SunOS 4.0.1 or later). Unipalm XTech (+44 954211797; or
  335. Aurora Technologies 617-577-1288 in USA) offers a binary kit for Suns based on
  336. Motif 1.1, with shared libraries.  NSL (+33 (1) 43 36 77 50; requests@nsl.fr)
  337. offers kits for the Sun 3 and Sun 4.  [An FAQ is for "personal opinions" on
  338. these toolkits.  I don't think it is appropriate to give such opinions through
  339. this particular posting, so I haven't included any.] In Australia, Information
  340. Technology Consultants Pty Ltd has Motif 1.1.2 for Sun Sparc 4.1 ( phone on
  341. (02) 360 6999, fax on (02) 360 6695 or e-mail to motif@itcsyd.itc.oz.au)
  342. SILOGIC (+33 61.57.95.95), 78 chemin des Sept Deniers - 31200 TOULOUSE FRANCE
  343. sells Motif 1.1 and 1.2 on Sun4 machines. They also provide customers with
  344. Motif maintenance and support, and do consulting on the X window System at
  345. large, including software development.
  346.  
  347.  
  348.  
  349.   The kits include varied levels of bug-fixing and support for shared
  350. libraries.  BIM (Fax : +32(2)759.47.95) offer Motif 1.1 for Sun-3, Sun-4,
  351. Sun-386i. Includes shared libraries.  Metrolink Inc. (+1-305-566-9586,
  352. sales@metrolink.com; in Europe contact ADNT, (33 1) 3956 5333) ships an
  353. implementation of X11R4 and Motif 1.1 for several 386 systems.
  354.  
  355.     An OSF/Motif source license must be obtained from OSF before source can be
  356. obtained from the Open Software Foundation. Call the Direct Channel Desk at
  357. OSF at 617-621-7300 or email direct@osf.org for ordering information.  In
  358. addition to the full Motif source, "option C" allows you to purchase source
  359. for the window manager mwm to run on X terminals.
  360.  
  361.  
  362. -----------------------------------------------------------------------------
  363. Subject:  9) Is there a list of Motif bugs?
  364.  
  365. Answer: With each patch release of Motif shipped, there is a list of known
  366. bugs provided.  The filename on the tape is "./OPENBUGS".  There is also a
  367. list of all the issues closed/resolved in that patch.  That is found as part
  368. of the "./README-1.1.n" (where n is the patch number) file.
  369.  
  370. These are the only OSF published lists.
  371.  
  372. No-one else seems to publish a list.
  373.  
  374.  
  375. -----------------------------------------------------------------------------
  376. Subject: 10) Where can I get public domain Motif source?
  377.  
  378. Answer: You cannot.  Motif source is not publically available.
  379.  
  380.  
  381. -----------------------------------------------------------------------------
  382. Subject: 11)  Are the Motif examples publically available?
  383.  
  384. [Last modified: November 92]
  385.  
  386. Answer: OSF has produced a list of which of the example programs can be
  387. distributed. Call OSF Direct for a copy of it.  Most of the example programs
  388. have been freed from distribution limitations so should be available.
  389.  
  390. In addition to these, many programs on export.lcs.mit.edu in the contrib
  391. directory use Motif.  Source code posted to comp.sources.x often uses Motif.
  392. The examples from Dan Heller's book are on export in
  393. /contrib/OReilly/motif/examples.tar.Z.  The examples from Doug Young's book
  394. are on export in /contrib/young.motif.Z The examples from Thomas Berlages's
  395. book are on export in /contrib/berlage.motif.Z The examples from Donald L.
  396. McMinds's book are on export in /contrib/mastering.motif.tar.Z The examples
  397. from Jan Newmarch's book are export in /contrib/newmarch.tar.Z
  398.  
  399.  
  400.  
  401. -----------------------------------------------------------------------------
  402. Subject: 12)  Has anyone done a public domain Motif lookalike?
  403.  
  404. [Last modified: September 92]
  405.  
  406. Answer: Not yet.  The specification is available (AES), and the validation
  407. suite can be bought, but no-one has taken up the challenge.  There are some
  408. commercial lookalikes (Looking Glass and Neuron Data), but no workalikes.
  409.  
  410. Applications that follow the Style Guide might be certified Motif-compliant
  411. through the checklist process, even though they're not using OSF/Motif
  412. binaries.
  413.  
  414. Tcl is available for ftp from allspice.berkeley.edu, and although implemented
  415. without Xt, is reported to look like Motif.  Strom Sytems (18666 Redmond Way
  416. o-2118, Redmond, WA 98052-6725) have a Simple Toolkit for X-Windows (sic) that
  417. appears to follow the Style Guide even though it doesn't quite look like
  418. Motif.
  419.  
  420. MOOLIT is a USL product that can be runtime switched between the Sun Open Look
  421. and Motif appearance.  It is based on  OLIT 4i.
  422.  
  423.  
  424. -----------------------------------------------------------------------------
  425. Subject: 13) Does anyone from OSF pay attention to our questions/suggestions?
  426.  
  427. Answer: Yes, and they quite often post answers too. But they may not respond
  428. to *your* problem because they have other things to do as well.  This
  429. newsgroup is not run by OSF, and has no formal connection with OSF.  OSF is a
  430. member-driven company.  The membership (and anyone can be a member) provides
  431. the primary input for future development of Motif.
  432.  
  433. -----------------------------------------------------------------------------
  434. Subject: 14) Does OSF have an application compliance validation service?
  435.  
  436. Answer: They have a checklist and a certification process which you can
  437. request from them.  Ask for the Level One Certification Checklist.  The
  438. process is one of self-certification.  It tests only the appearance and
  439. behavior of the application against Motif style.  The product will also be put
  440. in the OSF reference listing.  There's a one-time fee of $250.  According to
  441. the master license agreement, you can't use any OSF identifying mark unless
  442. you have done a certification.
  443.  
  444.  
  445. -----------------------------------------------------------------------------
  446. Subject: 15) What is the motif-talk mailing list?
  447.  
  448. Answer: The motif-talk mailing list is only for those who have purchased a
  449. Motif source code license. You can be placed on this list by emailing to
  450. motif-talk-request@osf.org, citing your Company name and source license
  451. number.
  452.  
  453.  
  454.  
  455. -----------------------------------------------------------------------------
  456. Subject: 16) What MIT patches do I use, and when do I use fix-osf?
  457.  
  458. Answer: The Motif 1.1.0 tape contains MIT patches 1-14. Apply these and any
  459. others you can get.  If your MIT patch level only goes up to fix-16, you also
  460. need to apply fix-osf.  Fix-osf was an emergency patch for a problem that
  461. existed when the Motif 1.1 tape was cut, The MIT fix-17 completely superseded
  462. osf-fix, so if you have applied fix-17 do not apply fix-osf.  The 1.1.1 tape
  463. contains MIT fixes 15-18, as well as an OSF-developed fix that deals with a
  464. subtle bug in the Selection mechanism of the Intrinsics.  Most people will
  465. have fix-15 to 18 by now; if you don't have them:
  466.  
  467.         Back out fix-osf if you have applied it
  468.         Apply fix-15 to 18
  469.         Apply fix-osf-1.1.1
  470.  
  471. The Selection fix was submitted to MIT, who came up with a different fix.  It
  472. will not be made into an R4 fix but should be in R5. The MIT fix was posted to
  473. motif-talk.
  474.  
  475.  
  476. -----------------------------------------------------------------------------
  477. Subject: 17) How does Motif work with X11R5?
  478.  
  479. Answer: Motif 1.1.X is only intended to be built with X11R4.  Motif 1.2.X is
  480. for X11R5.  however, Motif 1.1.4 has been set to also work with X11R5.
  481.  
  482. For Motif 1.1.1, 1.1.2 and 1.1.3 you will need to compile Xlib and Xt with a
  483. MOTIF_BC flag set to YES (page 8, section 3.3 of the R5 release notes), or
  484. you'll also have a link problem (LowerCase) and a fatal run time problem
  485. (XContext manager).  If your applications come up with "Unknown keysym name:
  486. osfActivate" errors, check the variable ProjectRoot. The name
  487. /$PROJECTROOT/lib/XKeysymDB will have been wired into your Xlib.
  488.  
  489. In Motif 1.1.0, XtCallCallback uses NULL as the first argument instead of a
  490. widget ID. This was ok under R4, but must be changed in the source for R5. It
  491. was changed by OSF from Motif 1.1.1 onward.
  492.  
  493. Mrm won't work at all (can't link since it uses an X private variable that has
  494. disappeared in R5).  Thre is an MIT patch that may fix this??  [I confess
  495. ignorance of Mrm and UIL].
  496.  
  497. -----------------------------------------------------------------------------
  498. Subject: 18)  How can I find which version of Motif I have?
  499.  
  500. Answer: The macro XmVERSION gives you the version number.  The macro
  501. XmREVISION gives you the major revision number.  The macro XmVersion combines
  502. these e.g. a value of 1002 is Motif 1.2.
  503.  
  504. To find the minor revision number is not easy.  From Motif 1.1.3 onwards, try
  505. this:
  506.  
  507.    'strings `which mwm` | grep OSF'.
  508.  
  509. to get the full version number e.g. 1.1.3.
  510.  
  511.  
  512. -----------------------------------------------------------------------------
  513. Subject: 19) TOPIC: LITERATURE
  514.  
  515. -----------------------------------------------------------------------------
  516. Subject: 20)  What books should I read or do I need to program using Motif?
  517.  
  518. [Last modified: November 92]
  519.  
  520. Answer: Ken Lee of the DEC Western Software Laboratory (klee@wsl.dec.com)
  521. regularly posts to comp.windows.x and ba.windows.x a list of reference books
  522. and articles on X and X programming.  In FAQ comp.windows.x an extract of his
  523. list appears. Specifically for Motif programming, though:
  524.  
  525. OSF/Motif Programmers Guide, Prentice-Hall 13-640525-8 (Motif 1.0) ISBN 0-13-
  526. 640681-5 (Motif 1.1) (NB: This makes use of the demo programs that you get
  527. with a Motif source license.  The programs are not included and may or may not
  528. be available on your system.)
  529.  
  530. OSF/Motif Programmers Reference Manual, Prentice-Hall 13-640517-17 (Motif 1.0)
  531.  ISBN 0-13-640616-5 (Motif 1.1) You will need this for the system calls.
  532.  
  533. OSF/Motif Style Guide, Prentice-Hall 13-640491-X (Motif 1.0) ISBN 0-13-
  534. 640673-4 (Motif 1.1) You will need this to get some idea of how to write
  535. programs with the correct `look and feel'.
  536.  
  537. You should read at least one of the the non-OSF books on Motif:
  538.  
  539. Young, Doug. "The X Window System: Applications and Programming with Xt (Motif
  540. Version)," Prentice Hall, 1989 (ISBN 0-13-497074-8). The excellent tutorial "X
  541. Window Systems Programming and Applications with Xt," (ISBN 0-13-972167-3)
  542. updated for Motif. [The examples from the Motif version are available on
  543. export in ~ftp/contrib/young.motif.tar.Z]
  544.  
  545. Marshall Brain at brain@adm.csc.ncsu.edu posted a set of simple and useful
  546. Motif tutorials.
  547.  
  548. Berlage, Thomas Berlage, OSF/Motif: Concepts and Programming, Addison-Wesley,
  549. UK, 1991. ISBN 0-201-55792-4.
  550.  
  551. Johnson, Eric F. and Kevin Reichard, Power Programming Motif, MIS: Press,
  552. Portland, OR, 1991. ISBN 1-55828-059-6. Book with disk, ISBN 1-55828-061-8.
  553.  
  554. Heller, Dan, The Motif Programming Manual, Volume 6 of the O'Reilly series on
  555. X.  This is the most complete volume on Motif programming available.  ISBN 0-
  556. 937175-70-6.
  557.  
  558. Barkakati, Nabajyoti, W Window System Programming, SAMS. ISBN 0-672-22750-9.
  559. This contains a section on Motif.
  560.  
  561. Newmarch, Jan, The X Window System and Motif - A Fast Track Approach.
  562. Addison-Wesley, ISBN 0-201-53931-4.
  563.  
  564. You will also need books and references on Xt such as:
  565.  
  566. Asente, Paul J., and Swick, Ralph R., "X Window System Toolkit, The Complete
  567. Programmer's Guide and Specification", Digital Press, 1990.  The bible on Xt.
  568. A treasury of information, excellent and invaluable.  Distributed by Digital
  569. Press, ISBN 1-55558-051-3, order number EY-E757E-DP; and by Prentice- Hall,
  570. ISBN 0-13-972191-6.
  571.  
  572. Nye, Adrian, and Tim O'Reilly, "X Toolkit Programming Manual, Volume 4,"
  573. O'Reilly and Associates, 1989. The folks at O'Reilly give their comprehensive
  574. treatment to programming with the MIT Intrinsics; R4 versions are now
  575. available, as is a Motif 1.1 version (Volume 4M).
  576.  
  577.  
  578. Flanagan, David, ed.,  "X Toolkit Reference Manual, Volume 5," O'Reilly and
  579. Associates, 1992a, Third Edition. A professional reference manual for the MIT
  580. X11R4 and X11R5 Xt.
  581.  
  582. Books and reference manuals on Xlib may also be useful.
  583.  
  584.  
  585.  
  586. -----------------------------------------------------------------------------
  587. Subject: 21) TOPIC: MWM
  588.  
  589. -----------------------------------------------------------------------------
  590. Subject: 22) What is the difference between Motif and mwm?
  591.  
  592. Answer: mwm is a window manager. Motif itself is made up of four parts: a
  593. User-Interface Guideline, an API toolkit of `C' routines which helps in the
  594. building of applications which conform to the Guideline, the window manager
  595. mwm, and a language UIL which is designed to ease user interface development.
  596. In general mwm will run an application built with any X-windows API, and in
  597. general an application built using the Motif toolkit will run under any window
  598. manager.
  599.  
  600.  
  601. -----------------------------------------------------------------------------
  602. Subject: 23) Does anyone have an alternative set of 3-D defaults for a
  603. monochrome screen?
  604.  
  605. Answer: This is obviously a matter of taste. Some alternatives suggested
  606. include
  607.  
  608. !Benjamin Schreiber, bs@osf.osf.org, bs@cs.brandeis.edu
  609. Mwm*foreground:                 black           ! Actually, when a window is
  610. Mwm*background:                 white           ! deactivated, the background
  611. Mwm*backgroundPixmap:           50_foreground   ! becomes white, insted of
  612. Mwm*topShadowPixmap:            white           ! 50% foreground (grey)
  613.  
  614. Mwm*activeForeground:           black
  615. Mwm*activeBackground:           white
  616. Mwm*activeBackgroundPixmap:     50_foreground
  617. Mwm*activeTopShadowPixmap:      white
  618.  
  619. Mwm*menu*backgroundPixmap:      background
  620. Mwm*menu*topShadowPixmap:       50_foreground
  621.  
  622. Mwm*title*foreground:                   black
  623. Mwm*title*background:                   white
  624. Mwm*title*backgroundPixmap:             white
  625. Mwm*title*topShadowPixmap:              50_foreground
  626. Mwm*title*activeForeground:             white
  627. Mwm*title*activeBackground:             black
  628. Mwm*title*activeBackgroundPixmap:       black
  629. Mwm*title*activeBottomShadowPixmap:     50_foreground
  630.  
  631. Mwm*feedback*backgroundPixmap:          white
  632.  
  633. or
  634.  
  635. ! From: tsang@isi.com (Kam C. Tsang)
  636. Mwm*background:                      White
  637. Mwm*activeBackground:                White
  638. Mwm*activeBackgroundPixmap:          25_foreground
  639. Mwm*foreground:                      Black
  640. Mwm*activeForeground:                Black
  641. Mwm*menu*background:                 white
  642. Mwm*menu*foreground:                 black
  643. xterm*Foreground:                    black
  644. xterm*Background:                    white
  645.  
  646.  
  647. or
  648.  
  649. ! From: ucsd.edu!usc!snorkelwacker!paperboy!yee  (Michael K. Yee)
  650. Mwm*cleanText:                          True
  651.  
  652. Mwm*activeBackground:           white
  653. Mwm*activeForeground:           black
  654. Mwm*background:                 white
  655. Mwm*foreground:                 black
  656.  
  657. Mwm*client*activeBackgroundPixmap:      50_foreground
  658. Mwm*client*activeTopShadowPixmap:       foreground
  659. Mwm*client*activeBottomShadowPixmap:    background
  660.  
  661. !Mwm*client*background:                 white
  662. !Mwm*client*foreground:                 black
  663. Mwm*client*backgroundPixmap:            75_foreground
  664. Mwm*client*topShadowPixmap:             foreground
  665. Mwm*client*bottomShadowPixmap:          background
  666.  
  667. !Mwm*feedback*background:               white
  668. !Mwm*feedback*foreground:               black
  669. Mwm*feedback*backgroundPixmap:          50_foreground
  670. !Mwm*feedback*topShadowPixmap:          25_foreground
  671. !Mwm*feedback*bottomShadowPixmap:       background
  672.  
  673. !Mwm*menu*background:                   white
  674. !Mwm*menu*foreground:                   black
  675. Mwm*menu*backgroundPixmap:              foreground
  676. !Mwm*menu*topShadowPixmap:              foreground
  677. !Mwm*menu*bottomShadowPixmap:           background
  678.  
  679. !Mwm*icon*background:                   white
  680. !Mwm*icon*foreground:                   black
  681. Mwm*icon*activeBackgroundPixmap:        50_foreground
  682. Mwm*icon*activeBottomShadowPixmap:      foreground
  683. Mwm*icon*backgroundPixmap:              75_foreground
  684.  
  685.  
  686.  
  687. -----------------------------------------------------------------------------
  688. Subject: 24)  How can I modify the Motif window manager decorations?
  689.  
  690. Answer: In resource files, use the window manager's client resource (which is
  691. the application) and the resource clientDecoration:
  692.  
  693. Mwm*XClock.clientDecoration:   none
  694.  
  695. turns off all clock decorations.  See the mwm(1) entry for other
  696. possibilities.
  697.  
  698. Programmatically, set the VendorShell resource XmNmwmDecorations to
  699. appropriate values: MWM_DECOR_NONE (or a bitwise or of values).
  700.  
  701. -----------------------------------------------------------------------------
  702. Subject: 25)  How can I turn off the Motif window manager functions from the
  703. system menu?
  704. [Last modified: October 92]
  705.  
  706. Answer: The user of an application can control functions in the system menu
  707. for an application using the mwm resource clientFunctions:
  708.  
  709.         mwm.application_name.clientFunctions: -resize -close
  710.  
  711. Note that mwm will have to be restarted after putting this in their resource
  712. database.
  713.  
  714.  
  715. Answer: The writer of an application can only remove items.  Be warned that
  716. your users will probably gnash their teeth, swear furiously at your product
  717. and stop using it if they discover that you have done this.  (Especially if
  718. you have removed the Close button, your application has hung and it has taken
  719. up all of memory and swap so it can't be killed.) Much better is to catch the
  720. action gracefully as in the next question.
  721.  
  722.         #include <Xm/MwmUtil.h>
  723.  
  724.         XtVaGetValues(shell, XmNmwmFunctions, &int_val, NULL);
  725.         int_val &= ~(MWM_FUNC_CLOSE | MWM_FUNC_ALL);
  726.         XtVaSetValues(shell, XmNmwmFunctions, int_val, NULL);
  727.  
  728.  
  729.  
  730. -----------------------------------------------------------------------------
  731. Subject: 26)  How can tell I if the user has selected the "Close" item on the
  732. system menu attached to the top-level shell?  I need to do some clean up
  733. before exiting.
  734.  
  735. Answer:          This works with R4 Intrinsics
  736.  
  737.         void FinalCleanupCB(w, client_data, call_data)
  738.         Widget   w;
  739.         caddr_t  client_data, call_data;
  740.         {
  741.                 /* tidy up stuff here */
  742.                 ...
  743.                 /* exit if you want to */
  744.                 exit (0);
  745.         }
  746.  
  747.         main()
  748.         {
  749.                 Atom wm_delete_window;
  750.  
  751.                 ...
  752.                 XtRealizeWidget(toplevel);
  753.                 ...
  754.                 wm_delete_window =
  755.                         XmInternAtom(XtDisplay(toplevel),
  756.                                 "WM_DELETE_WINDOW", False);
  757.                 XmAddWMProtocolCallback(toplevel, wm_delete_window,
  758.                         FinalCleanupCB, NULL);
  759.                 XtMainLoop();
  760.         }
  761.  
  762. This will still kill the application.  To turn this behaviour off so that the
  763. application is not killed, set the shell resource XmNdeleteResponse to
  764. XmDO_NOTHING.  This means that users cannot kill your application via the
  765. system menu, and may be a bad thing.
  766.  
  767. If you are running R3, Bob Hays (bobhays@spss.com) has suggested this:
  768. "Trapping on the delete window atom does not work as I cannot force my action
  769. routine to the top of the action list for the activity desired, so the window
  770. manager kills my window anyway BEFORE I can do anything about it.  And, to
  771. make matters worse, the window manager (Motif in this case) tacks its atoms
  772. and handlers onto the window at some unknown point down the line after the
  773. creation of the shell widget as far as I can tell.  So....
  774.  
  775. I have a procedure as an action routine for ClientMessage.  Then, if I get a
  776. property change event on the window manager protocols, I then tack on
  777. WM_SAVE_YOURSELF.  If I get this request, I clean up (it seems to happen on
  778. WM_DELETE_WINDOW, BTW, if you remove WM_DELETE_WINDOW from the WM protocols
  779. atom) and exit.  Works great and is less filling overall:-)."
  780.  
  781.  
  782. -----------------------------------------------------------------------------
  783. Subject: 27)  Is there an mwm virtual desktop manager?
  784.  
  785. Answer: Peter E. Wagner (pew@cs.brown.edu): Imagine that your "desktop"
  786. extends beyond the view provided by your monitor.  A virtual window manager
  787. gives you access to the space beyond your viewport (i.e. your screen) by
  788. allowing you to move the viewport to other areas of the extended desktop.
  789.  
  790. The first one is Solbourne's swm, which spawned vtwm/tvtwm/olvwm.
  791.  
  792. David B. Lewis created one.  suresh@unipalm.co.uk has further developed it
  793. into the UniPalm product DOORS, which is only available as a source code
  794. extension to the MOTIF window manager.  The price of the source and unlimited
  795. right to distribute binaries is 10,000 pounds Sterling.  Alternately, source
  796. and right to use within one company is 2,000 pounds Sterling.  Contact Peter
  797. Dawe
  798.  
  799. Unipalm Limited                         Voice: +44 (0) 223 420002
  800. 216 The Science Park                    Fax:   +44 (0) 223 426868
  801. CAMBRIDGE
  802. CB4 4WA
  803.  
  804.  
  805.  
  806. An enhancement request for such an object has been filed with OSF.
  807.  
  808. -----------------------------------------------------------------------------
  809. END OF PART ONE
  810. --
  811. +----------------------+---+
  812.   Jan Newmarch, Information Science and Engineering,
  813.   University of Canberra, PO Box 1, Belconnen, Act 2616
  814.   Australia. Tel: (Aust) 6-2012422. Fax: (Aust) 6-2015041
  815.